package billrestauration.entities;

import java.io.Serializable;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;

import org.springframework.context.annotation.Lazy;

import billrestauration.extra.Config;
@Entity
@Lazy(value=false)
@Table(name="grouperole")
public class GroupeRole implements Serializable {
	/**
	 * 
	 */
	private static final long serialVersionUID = Config.versionUID;
	@Id
	@Column
	@GeneratedValue
	private long id;
	@ManyToOne(targetEntity=Groupe.class)
	@JoinColumn(name="refgroupe",referencedColumnName="nomgroupe",nullable=false)
	private Groupe groupe;
	
	@Column(nullable=false,name="rolegroupe")
	private String rolegroupe;

	public long getId() {
		return id;
	}

	public void setId(long id) {
		this.id = id;
	}

	public Groupe getGroupe() {
		return groupe;
	}

	public void setGroupe(Groupe groupe) {
		this.groupe = groupe;
	}

	public String getRolegroupe() {
		return rolegroupe;
	}

	public void setRolegroupe(String rolegroupe) {
		this.rolegroupe = rolegroupe;
	}

	public GroupeRole(long id, Groupe groupe, String rolegroupe) {
		super();
		this.id = id;
		this.groupe = groupe;
		this.rolegroupe = rolegroupe;
	}

	public GroupeRole() {
		super();
		// TODO Auto-generated constructor stub
	}
/*
 select g.id, g.nomgroupe, ga.rolegroupe  
       from groupe g, groupeutilisateur gm, grouperole ga  
         where gm.refutilisateur = ?  
         and g.refgroupe = ga.refgroupe 
        and g.refgroupe = gm.refgroupe
 */
	@Override
	public String toString() {
		return "GroupeRole [id=" + id + ", groupe=" + groupe + ", rolegroupe="
				+ rolegroupe + "]";
	}
	
}
